package com.ruoyi.system.domain.fx;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 服务预约对象 fx_appointment
 *
 * @author ruoyi
 * @date 2025-04-29
 */
@Data
public class FxAppointment
{
    private static final long serialVersionUID = 1L;

    /** 主键ID */
    @TableId(type = IdType.AUTO)
    private Long id;

    /** 订单号  FX开头 */
    @Excel(name = "订单号  FX开头")
    private String orderId;

    /** 预约用户id */
    @Excel(name = "预约用户id")
    private Long userId;

    /** 内容编号 */
    @Excel(name = "内容编号")
    private Long contentId;

    /** 预约内容 */
    @Excel(name = "预约内容")
    private String content;


    /** 用户需求描述 */
    @Excel(name = "用户需求描述")
    private String  demand;

    /** 需求图片 */
    @Excel(name = "用户需求描述")
    private String  demandImg;

    /** 状态：0待派单   1待上门   2进行中  3待支付 4已完成 5作废*/
    @Excel(name = "状态：0待派单   1待上门   2进行中  3待支付 4已完成 5作废" )
    private Long status;

    /** 定金金额 */
    @Excel(name = "定金金额")
    private BigDecimal deposit;

    /** 总金额 */
    @Excel(name = "总金额")
    private BigDecimal totalAmount;

    /** 预约日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "预约日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date appointmentDate;

    /** 预约时间段 */
    @Excel(name = "预约时间段")
    private String timeSlot;

    /** 收货人姓名 */
    @Excel(name = "收货人姓名")
    private String receiveName;

    /** 收货地址 */
    @Excel(name = "收货地址")
    private String receiveAddress;

    /** 收货人电话 */
    @Excel(name = "收货人电话")
    private String receivePhonenum;

    /** 收货地址经度 */
    @Excel(name = "收货地址经度")
    private String receiveLongitude;

    /** 收货地址纬度 */
    @Excel(name = "收货地址纬度")
    private String receiveLatitude;

    /** 创建者 */
    private String createBy;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /** 更新者 */
    private String updateBy;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    /** 备注 */
    private String remark;

    /** 微信订单号 */
    @Excel(name = "微信订单号")
    private String transactionId;

    /** 退单号 */
    @Excel(name = "退单号")
    private String outRefundNo;


    /** 支付时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "支付时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date payTime;

}
